<template>
  <div>
    看控制台测试
  </div>
</template>

<script>
export default {
  created () {
    // 1.👉记住基础理解：then和catch，()里函数体，return的值，都会赋给下一个then
    const pA = new Promise((resolve, reject) => {
      setTimeout(() => {
        resolve('假设ajax成功')
        // reject(new Error('假设ajax报错了'))
      }, 1000)
    })
    // 相当于一个中间值
    const pB = pA.then(res => {
      return [null, res]
    }).catch(err => {
      return [err, null]
    })

    async function a () {
      // await pB拿到的结果是一个数组
      // 数组的第一个位置值是错误信息，第二个位置的值是成功结果(数组解构赋值)
      const [err, res] = await pB
      if (err) {
        console.log('失败了' + err.toString())
      } else {
        console.log(res)
      }
    }
    a()
  }
}
</script>

<style>
</style>
